#ifndef INVOKER_H
#define INVOKER_H
#include"command.h"
#include<list>
using namespace std;
class Invoker{
public:
    Invoker(){}
    //添加命令
    void addCmd(Command *cmd)
    {
        m_cmds.insert(m_cmds.cend(),cmd);
    }
    //删除命令
    void deleteCmd(Command *cmd)
    {
        m_cmds.remove(cmd);
    }
    //执行命令
    void notify()
    {
        for(auto str:m_cmds)
            str->excute();
    }
private:
    list<Command*> m_cmds; //命令队列

};
#endif // INVOKER_H
